Autogenerated HTML docs for v1.5.6.1-77-gf9a0 
diff --git a/RelNotes-1.5.6.1.txt b/RelNotes-1.5.6.1.txt new file mode 100644 index 0000000..4864b16 --- /dev/null +++ b/RelNotes-1.5.6.1.txt 
@@ -0,0 +1,28 @@ +GIT v1.5.6.1 Release Notes +========================== + +Fixes since v1.5.6 +------------------ + +* Last minute change broke loose object creation on AIX. + +* (performance fix) We used to make $GIT_DIR absolute path early in the + programs but keeping it relative to the current directory internally + gives 1-3 per-cent performance boost. + +* bash completion knows the new --graph option to git-log family. + + +* git-diff -c/--cc showed unnecessary "deletion" lines at the context + boundary. + +* git-for-each-ref ignored %(object) and %(type) requests for tag + objects. + +* git-merge usage had a typo. + +* Rebuilding of git-svn metainfo database did not take rewriteRoot + option into account. + +* Running "git-rebase --continue/--skip/--abort" before starting a + rebase gave nonsense error messages. 
diff --git a/config.txt b/config.txt index 1e09a57..90c8a45 100644 --- a/config.txt +++ b/config.txt 
@@ -372,6 +372,14 @@  does not trigger if the character before such a carriage-return  is not a whitespace (not enabled by default).   +core.fsyncobjectfiles:: +	This boolean will enable 'fsync()' when writing object files. ++ +This is a total waste of time and effort on a filesystem that orders +data writes properly, but can be useful for filesystems that do not use +journalling (traditional UNIX filesystems) or that only journal metadata +and not file contents (OS X's HFS+, or Linux ext3 with "data=writeback"). +  alias.*:: 	Command aliases for the linkgit:git[1] command wrapper - e.g. 	after defining "alias.last = cat-file commit HEAD", the invocation 
diff --git a/git-config.html b/git-config.html index ed6215c..b28166e 100644 --- a/git-config.html +++ b/git-config.html 
@@ -1196,6 +1196,18 @@  </ul>   </dd>   <dt>  +core.fsyncobjectfiles  +</dt>  +<dd>  +<p>  + This boolean will enable <em>fsync()</em> when writing object files.  +</p>  +<p>This is a total waste of time and effort on a filesystem that orders  +data writes properly, but can be useful for filesystems that do not use  +journalling (traditional UNIX filesystems) or that only journal metadata  +and not file contents (OS X's HFS+, or Linux ext3 with "data=writeback").</p>  +</dd>  +<dt>   alias.*   </dt>   <dd>  @@ -2635,7 +2647,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 23-Jun-2008 07:13:34 UTC  +Last updated 26-Jun-2008 06:33:11 UTC   </div>   </div>   </body>  
diff --git a/git.html b/git.html index 7960f5a..219525a 100644 --- a/git.html +++ b/git.html 
@@ -1963,7 +1963,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 18-Jun-2008 23:14:36 UTC  +Last updated 26-Jun-2008 06:33:11 UTC   </div>   </div>   </body>  
diff --git a/git.txt b/git.txt index 7414238..85468a1 100644 --- a/git.txt +++ b/git.txt 
@@ -43,12 +43,13 @@  branch of the `git.git` repository.  Documentation for older releases are available here:   -* link:v1.5.6/git.html[documentation for release 1.5.6] +* link:v1.5.6.1/git.html[documentation for release 1.5.6.1]    * release notes for - link:RelNotes-1.5.6.txt[1.5.6], + link:RelNotes-1.5.6.1.txt[1.5.6.1]. + link:RelNotes-1.5.6.txt[1.5.6].   -* link:v1.5.5/git.html[documentation for release 1.5.5] +* link:v1.5.5.4/git.html[documentation for release 1.5.5.4]    * release notes for  link:RelNotes-1.5.5.4.txt[1.5.5.4], @@ -57,8 +58,6 @@  link:RelNotes-1.5.5.1.txt[1.5.5.1],  link:RelNotes-1.5.5.txt[1.5.5].   -* link:v1.5.5.4/git.html[documentation for release 1.5.5.4] -  * link:v1.5.4.5/git.html[documentation for release 1.5.4.5]    * release notes for @@ -82,6 +81,8 @@  link:RelNotes-1.5.3.1.txt[1.5.3.1],  link:RelNotes-1.5.3.txt[1.5.3].   +* link:v1.5.2.5/git.html[documentation for release 1.5.2.5] +  * release notes for  link:RelNotes-1.5.2.5.txt[1.5.2.5],  link:RelNotes-1.5.2.4.txt[1.5.2.4], 
diff --git a/howto-index.html b/howto-index.html index 2e5fcd6..42efce1 100644 --- a/howto-index.html +++ b/howto-index.html 
@@ -368,7 +368,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 16-Jun-2008 01:52:17 UTC  +Last updated 26-Jun-2008 06:33:16 UTC   </div>   </div>   </body>  
diff --git a/howto/update-hook-example.txt b/howto/update-hook-example.txt index 88765b5..8b2ec50 100644 --- a/howto/update-hook-example.txt +++ b/howto/update-hook-example.txt 
@@ -65,10 +65,10 @@    # Implement generic branch and tag policies.  # - Tags should not be updated once created. -# - Branches should only be fast-forwarded. +# - Branches should only be fast-forwarded unless their pattern starts with '+'  case "$1" in  refs/tags/*) - [ -f "$GIT_DIR/$1" ] && + git rev-parse --verify -q "$1" &&  deny >/dev/null "You can't overwrite an existing tag"  ;;  refs/heads/*) @@ -80,7 +80,7 @@  mb=$(git-merge-base "$2" "$3")  case "$mb,$2" in  "$2,$mb") info "Update is fast-forward" ;; - *) deny >/dev/null "This is not a fast-forward update." ;; +	*) noff=y; info "This is not a fast-forward update.";;  esac  fi  ;; @@ -95,21 +95,30 @@  username=$(id -u -n)  info "The user is: '$username'"   -if [ -f "$allowed_users_file" ]; then +if test -f "$allowed_users_file" +then  rc=$(cat $allowed_users_file | grep -v '^#' | grep -v '^$' | - while read head_pattern user_patterns; do - matchlen=$(expr "$1" : "$head_pattern") - if [ "$matchlen" == "${#1}" ]; then - info "Found matching head pattern: '$head_pattern'" - for user_pattern in $user_patterns; do - info "Checking user: '$username' against pattern: '$user_pattern'" - matchlen=$(expr "$username" : "$user_pattern") - if [ "$matchlen" == "${#username}" ]; then - grant "Allowing user: '$username' with pattern: '$user_pattern'" - fi - done - deny "The user is not in the access list for this branch" - fi + while read heads user_patterns + do + # does this rule apply to us? + head_pattern=${heads#+} + matchlen=$(expr "$1" : "${head_pattern#+}") + test "$matchlen" = ${#1} || continue + + # if non-ff, $heads must be with the '+' prefix + test -n "$noff" && + test "$head_pattern" = "$heads" && continue + + info "Found matching head pattern: '$head_pattern'" + for user_pattern in $user_patterns; do +	info "Checking user: '$username' against pattern: '$user_pattern'" +	matchlen=$(expr "$username" : "$user_pattern") +	if test "$matchlen" = "${#username}" +	then + grant "Allowing user: '$username' with pattern: '$user_pattern'" +	fi + done + deny "The user is not in the access list for this branch"  done  )  case "$rc" in @@ -124,23 +133,32 @@  info "The user belongs to the following groups:"  info "'$groups'"   -if [ -f "$allowed_groups_file" ]; then +if test -f "$allowed_groups_file" +then  rc=$(cat $allowed_groups_file | grep -v '^#' | grep -v '^$' | - while read head_pattern group_patterns; do - matchlen=$(expr "$1" : "$head_pattern") - if [ "$matchlen" == "${#1}" ]; then - info "Found matching head pattern: '$head_pattern'" - for group_pattern in $group_patterns; do - for groupname in $groups; do - info "Checking group: '$groupname' against pattern: '$group_pattern'" - matchlen=$(expr "$groupname" : "$group_pattern") - if [ "$matchlen" == "${#groupname}" ]; then - grant "Allowing group: '$groupname' with pattern: '$group_pattern'" - fi - done + while read heads group_patterns + do + # does this rule apply to us? + head_pattern=${heads#+} + matchlen=$(expr "$1" : "${head_pattern#+}") + test "$matchlen" = ${#1} || continue + + # if non-ff, $heads must be with the '+' prefix + test -n "$noff" && + test "$head_pattern" = "$heads" && continue + + info "Found matching head pattern: '$head_pattern'" + for group_pattern in $group_patterns; do +	for groupname in $groups; do + info "Checking group: '$groupname' against pattern: '$group_pattern'" + matchlen=$(expr "$groupname" : "$group_pattern") + if test "$matchlen" = "${#groupname}" + then + grant "Allowing group: '$groupname' with pattern: '$group_pattern'" + fi  done - deny "None of the user's groups are in the access list for this branch" - fi + done + deny "None of the user's groups are in the access list for this branch"  done  )  case "$rc" in @@ -159,6 +177,7 @@  whom. The format of each file would look like this:    refs/heads/master	junio +	+refs/heads/pu	junio  refs/heads/cogito$	pasky  refs/heads/bw/.*	linus  refs/heads/tmp/.*	.* @@ -166,7 +185,8 @@    With this, Linus can push or create "bw/penguin" or "bw/zebra"  or "bw/panda" branches, Pasky can do only "cogito", and JC can -do master branch and make versioned tags. And anybody can do -tmp/blah branches. +do master and pu branches and make versioned tags. And anybody +can do tmp/blah branches. The '+' sign at the pu record means +that JC can make non-fast-forward pushes on it.    ------------